home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Maclife 157
/
MACLIFE157-2001-09.ISO.7z
/
MACLIFE157-2001-09.ISO
/
Linux
/
MacOS Tools
/
BootX 1.2.2
/
Sources
/
src
/
miboot
/
nr_wrapper.c
< prev
next >
Wrap
C/C++ Source or Header
|
2001-07-23
|
22KB
|
633 lines
#include "nr_wrapper.h"
#include "debug_text.h"
#include <CodeFragments.h>
#include <MixedMode.h>
enum {
kRegistryEntryIDInit,
kRegistryEntryIDCompare,
kRegistryEntryIDCopy,
kRegistryEntryIDDispose,
kRegistryCStrEntryCreate,
kRegistryEntryDelete,
kRegistryEntryCopy,
kRegistryEntryIterateCreate,
kRegistryEntryIterateDispose,
kRegistryEntryIterateSet,
kRegistryEntryIterate,
kRegistryEntrySearch,
kRegistryCStrEntryLookup,
kRegistryEntryToPathSize,
kRegistryCStrEntryToPath,
kRegistryCStrEntryToName,
kRegistryPropertyCreate,
kRegistryPropertyDelete,
kRegistryPropertyRename,
kRegistryPropertyIterateCreate,
kRegistryPropertyIterateDispose,
kRegistryPropertyIterate,
kRegistryPropertyGetSize,
kRegistryPropertyGet,
kRegistryPropertySet,
kRegistryEntryGetMod,
kRegistryEntrySetMod,
kRegistryPropertyGetMod,
kRegistryPropertySetMod,
kRegistryEntryMod,
kRegistryEntryPropertyMod,
kRegistryCount
};
static UniversalProcPtr __nr_symbols[kRegistryCount];
static CFragConnectionID __nr_connID;
extern dt_context* dct;
OSStatus
init_nr_wrappers()
{
OSStatus err;
Ptr mainAddr;
Str255 errMessage;
CFragSymbolClass symClass;
Ptr symbol;
err = GetSharedLibrary( "¥pNameRegistryLib",
kPowerPCCFragArch,
kReferenceCFrag,
&__nr_connID,
&mainAddr,
errMessage);
if (err != noErr) {
dt_printf(dct, "GetSharedLibrary() failed <%#s>¥n", errMessage);
return err;
}
#define LOOKUP_SYMBOL(name, procInfo) ¥
err = FindSymbol(__nr_connID, "¥p" #name, &symbol,&symClass); ¥
if (err == noErr) {¥
__nr_symbols[k##name] = NewRoutineDescriptorTrap( ¥
(ProcPtr)symbol, procInfo, kPowerPCISA); ¥
} else {¥
__nr_symbols[k##name] = NULL; ¥
}
LOOKUP_SYMBOL(RegistryEntryIDInit, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
)
LOOKUP_SYMBOL(RegistryEntryIDCompare, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(Boolean)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegEntryID *)))
)
LOOKUP_SYMBOL(RegistryEntryIDCopy, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegEntryID *)))
)
LOOKUP_SYMBOL(RegistryEntryIDDispose, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
)
LOOKUP_SYMBOL(RegistryCStrEntryCreate, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegCStrPathName *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegEntryID *)))
)
LOOKUP_SYMBOL(RegistryEntryDelete, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
)
LOOKUP_SYMBOL(RegistryEntryCopy, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegEntryID *)))
)
LOOKUP_SYMBOL(RegistryEntryIterateCreate, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryIter *)))
)
LOOKUP_SYMBOL(RegistryEntryIterateDispose, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryIter *)))
)
LOOKUP_SYMBOL(RegistryEntryIterateSet, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryIter *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegEntryID *)))
)
LOOKUP_SYMBOL(RegistryEntryIterate, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryIter *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegEntryIterationOp)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(Boolean *)))
)
LOOKUP_SYMBOL(RegistryEntrySearch, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryIter *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegEntryIterationOp)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(Boolean *)))
| STACK_ROUTINE_PARAMETER(5, SIZE_CODE(sizeof(RegPropertyName *)))
| STACK_ROUTINE_PARAMETER(6, SIZE_CODE(sizeof(void *)))
| STACK_ROUTINE_PARAMETER(7, SIZE_CODE(sizeof(RegPropertyValueSize)))
)
LOOKUP_SYMBOL(RegistryCStrEntryLookup, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegCStrPathName *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegEntryID *)))
)
LOOKUP_SYMBOL(RegistryEntryToPathSize, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegPathNameSize *)))
)
LOOKUP_SYMBOL(RegistryCStrEntryToPath, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegCStrPathName *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegPathNameSize)))
)
LOOKUP_SYMBOL(RegistryCStrEntryToName, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegCStrEntryName *)))
| STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(Boolean *)))
)
LOOKUP_SYMBOL(RegistryPropertyCreate, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegPropertyName *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(void *)))
| STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(RegPropertyValueSize)))
)
LOOKUP_SYMBOL(RegistryPropertyDelete, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegPropertyName *)))
)
LOOKUP_SYMBOL(RegistryPropertyRename, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegPropertyName *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegPropertyName *)))
)
LOOKUP_SYMBOL(RegistryPropertyIterateCreate, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegPropertyIter *)))
)
LOOKUP_SYMBOL(RegistryPropertyIterateDispose, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegPropertyIter *)))
)
LOOKUP_SYMBOL(RegistryPropertyIterate, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegPropertyIter *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegPropertyName *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(Boolean *)))
)
LOOKUP_SYMBOL(RegistryPropertyGetSize, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegPropertyName *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegPropertyValueSize *)))
)
LOOKUP_SYMBOL(RegistryPropertyGet, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegPropertyName *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(void *)))
| STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(RegPropertyValueSize *)))
)
LOOKUP_SYMBOL(RegistryPropertySet, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegPropertyName *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(void *)))
| STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(RegPropertyValueSize)))
)
LOOKUP_SYMBOL(RegistryEntryGetMod, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegEntryModifiers *)))
)
LOOKUP_SYMBOL(RegistryEntrySetMod, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegEntryModifiers)))
)
LOOKUP_SYMBOL(RegistryPropertyGetMod, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegPropertyName *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegPropertyModifiers *)))
)
LOOKUP_SYMBOL(RegistryPropertySetMod, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegPropertyName *)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegPropertyModifiers)))
)
LOOKUP_SYMBOL(RegistryEntryMod, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryIter *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegEntryIterationOp)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(Boolean *)))
| STACK_ROUTINE_PARAMETER(5, SIZE_CODE(sizeof(RegEntryModifiers)))
)
LOOKUP_SYMBOL(RegistryEntryPropertyMod, kCStackBased
| RESULT_SIZE(SIZE_CODE(sizeof(OSStatus)))
| STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(RegEntryIter *)))
| STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(RegEntryIterationOp)))
| STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(RegEntryID *)))
| STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(Boolean *)))
| STACK_ROUTINE_PARAMETER(5, SIZE_CODE(sizeof(RegEntryModifiers)))
)
return noErr;
}
OSStatus
dispose_nr_wrappers(void)
{
int i;
for(i=0; i<kRegistryCount; i++) {
if (__nr_symbols[i]) {
DisposeRoutineDescriptorTrap(__nr_symbols[i]);
__nr_symbols[i] = NULL;
}
}
CloseConnection(&__nr_connID);
}
OSStatus
RegistryEntryIDInit (RegEntryID * id)
{
if (__nr_symbols[kRegistryEntryIDInit] == NULL)
return -1;
return ((OSStatus (*)(RegEntryID *))(__nr_symbols[kRegistryEntryIDInit]))(id);
}
Boolean
RegistryEntryIDCompare (const RegEntryID * id1,
const RegEntryID * id2)
{
if (__nr_symbols[kRegistryEntryIDCompare] == NULL)
return false;
return ((OSStatus (*)(const RegEntryID *, const RegEntryID *))
(__nr_symbols[kRegistryEntryIDCompare]))(id1, id2);
}
OSStatus
RegistryEntryIDCopy (const RegEntryID * src,
RegEntryID * dst)
{
if (__nr_symbols[kRegistryEntryIDCopy] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID *,RegEntryID *))
(__nr_symbols[kRegistryEntryIDCopy]))(src,dst);
}
OSStatus
RegistryEntryIDDispose (RegEntryID * id)
{
if (__nr_symbols[kRegistryEntryIDDispose] == NULL)
return -1;
return ((OSStatus (*)(RegEntryID *))(__nr_symbols[kRegistryEntryIDDispose]))(id);
}
OSStatus
RegistryCStrEntryCreate (const RegEntryID * parentEntry,
const RegCStrPathName * name,
RegEntryID * newEntry)
{
if (__nr_symbols[kRegistryCStrEntryCreate] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID *,const RegCStrPathName *,RegEntryID *))
(__nr_symbols[kRegistryCStrEntryCreate]))(parentEntry,name,newEntry);
}
OSStatus
RegistryEntryDelete (const RegEntryID * id)
{
if (__nr_symbols[kRegistryEntryDelete] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID *))(__nr_symbols[kRegistryEntryDelete]))(id);
}
OSStatus
RegistryEntryCopy (RegEntryID * parentEntryID,
RegEntryID * sourceDevice,
RegEntryID * destDevice)
{
if (__nr_symbols[kRegistryEntryCopy] == NULL)
return -1;
return ((OSStatus (*)(RegEntryID *,RegEntryID *,RegEntryID *))
(__nr_symbols[kRegistryEntryCopy]))(parentEntryID,sourceDevice,destDevice);
}
OSStatus
RegistryEntryIterateCreate (RegEntryIter * cookie)
{
if (__nr_symbols[kRegistryEntryIterateCreate] == NULL)
return -1;
return ((OSStatus (*)(RegEntryIter *))(__nr_symbols[kRegistryEntryIterateCreate]))(cookie);
}
OSStatus
RegistryEntryIterateDispose (RegEntryIter * cookie)
{
if (__nr_symbols[kRegistryEntryIterateDispose] == NULL)
return -1;
return ((OSStatus (*)(RegEntryIter *))(__nr_symbols[kRegistryEntryIterateDispose]))(cookie);
}
OSStatus
RegistryEntryIterateSet (RegEntryIter * cookie,
const RegEntryID * startEntryID)
{
if (__nr_symbols[kRegistryEntryIterateSet] == NULL)
return -1;
return ((OSStatus (*)(RegEntryIter*,const RegEntryID*))
(__nr_symbols[kRegistryEntryIterateSet]))
(cookie, startEntryID);
}
OSStatus
RegistryEntryIterate (RegEntryIter * cookie,
RegEntryIterationOp relationship,
RegEntryID * foundEntry,
Boolean * done)
{
if (__nr_symbols[kRegistryEntryIterate] == NULL)
return -1;
return ((OSStatus (*)(RegEntryIter*,RegEntryIterationOp,RegEntryID*,Boolean*))
(__nr_symbols[kRegistryEntryIterate]))
(cookie, relationship, foundEntry, done);
}
OSStatus
RegistryEntrySearch (RegEntryIter * cookie,
RegEntryIterationOp relationship,
RegEntryID * foundEntry,
Boolean * done,
const RegPropertyName * propertyName,
const void * propertyValue,
RegPropertyValueSize propertySize)
{
if (__nr_symbols[kRegistryEntrySearch] == NULL)
return -1;
return ((OSStatus (*)(RegEntryIter*,RegEntryIterationOp,RegEntryID*,Boolean*,
const RegPropertyName*,const void*,RegPropertyValueSize))
(__nr_symbols[kRegistryEntrySearch]))
(cookie,relationship,foundEntry,done,propertyName,propertyValue,propertySize);
}
OSStatus
RegistryCStrEntryLookup (const RegEntryID * searchPointID,
const RegCStrPathName * pathName,
RegEntryID * foundEntry)
{
if (__nr_symbols[kRegistryCStrEntryLookup] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,const RegCStrPathName*,RegEntryID*))
(__nr_symbols[kRegistryCStrEntryLookup]))
(searchPointID,pathName,foundEntry);
}
OSStatus
RegistryEntryToPathSize (const RegEntryID * entryID,
RegPathNameSize * pathSize)
{
if (__nr_symbols[kRegistryEntryToPathSize] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,RegPathNameSize*))
(__nr_symbols[kRegistryEntryToPathSize]))
(entryID,pathSize);
}
OSStatus
RegistryCStrEntryToPath (const RegEntryID * entryID,
RegCStrPathName * pathName,
RegPathNameSize pathSize)
{
if (__nr_symbols[kRegistryCStrEntryToPath] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,RegCStrPathName*,RegPathNameSize))
(__nr_symbols[kRegistryCStrEntryToPath]))
(entryID,pathName,pathSize);
}
OSStatus
RegistryCStrEntryToName (const RegEntryID * entryID,
RegEntryID * parentEntry,
RegCStrEntryName * nameComponent,
Boolean * done)
{
if (__nr_symbols[kRegistryCStrEntryToName] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,RegEntryID*,RegCStrEntryName*,Boolean*))
(__nr_symbols[kRegistryCStrEntryToName]))
(entryID,parentEntry,nameComponent,done);
}
OSStatus
RegistryPropertyCreate (const RegEntryID * entryID,
const RegPropertyName * propertyName,
const void * propertyValue,
RegPropertyValueSize propertySize)
{
if (__nr_symbols[kRegistryPropertyCreate] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,const RegPropertyName*,const void*,
RegPropertyValueSize))
(__nr_symbols[kRegistryPropertyCreate]))
(entryID,propertyName,propertyValue,propertySize);
}
OSStatus
RegistryPropertyDelete (const RegEntryID * entryID,
const RegPropertyName * propertyName)
{
if (__nr_symbols[kRegistryPropertyDelete] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,const RegPropertyName*))
(__nr_symbols[kRegistryPropertyDelete]))
(entryID,propertyName);
}
OSStatus
RegistryPropertyRename (const RegEntryID * entry,
const RegPropertyName * oldName,
const RegPropertyName * newName)
{
if (__nr_symbols[kRegistryPropertyRename] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,const RegPropertyName*,const RegPropertyName*))
(__nr_symbols[kRegistryPropertyRename]))
(entry,oldName,newName);
}
OSStatus
RegistryPropertyIterateCreate (const RegEntryID * entry,
RegPropertyIter * cookie)
{
if (__nr_symbols[kRegistryPropertyIterateCreate] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,RegPropertyIter*))
(__nr_symbols[kRegistryPropertyIterateCreate]))
(entry,cookie);
}
OSStatus
RegistryPropertyIterateDispose (RegPropertyIter * cookie)
{
if (__nr_symbols[kRegistryPropertyIterateDispose] == NULL)
return -1;
return ((OSStatus (*)(RegPropertyIter*))
(__nr_symbols[kRegistryPropertyIterateDispose]))
(cookie);
}
OSStatus
RegistryPropertyIterate (RegPropertyIter * cookie,
RegPropertyName * foundProperty,
Boolean * done)
{
if (__nr_symbols[kRegistryPropertyIterate] == NULL)
return -1;
return ((OSStatus (*)(RegPropertyIter*,RegPropertyName*,Boolean*))
(__nr_symbols[kRegistryPropertyIterate]))
(cookie,foundProperty,done);
}
OSStatus
RegistryPropertyGetSize (const RegEntryID * entryID,
const RegPropertyName * propertyName,
RegPropertyValueSize * propertySize)
{
if (__nr_symbols[kRegistryPropertyGetSize] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,const RegPropertyName*,RegPropertyValueSize*))
(__nr_symbols[kRegistryPropertyGetSize]))
(entryID,propertyName,propertySize);
}
OSStatus
RegistryPropertyGet (const RegEntryID * entryID,
const RegPropertyName * propertyName,
void * propertyValue,
RegPropertyValueSize * propertySize)
{
if (__nr_symbols[kRegistryPropertyGet] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,const RegPropertyName*,void*,RegPropertyValueSize*))
(__nr_symbols[kRegistryPropertyGet]))
(entryID,propertyName,propertyValue,propertySize);
}
OSStatus
RegistryPropertySet (const RegEntryID * entryID,
const RegPropertyName * propertyName,
const void * propertyValue,
RegPropertyValueSize propertySize)
{
if (__nr_symbols[kRegistryPropertySet] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,const RegPropertyName*,const void*,RegPropertyValueSize))
(__nr_symbols[kRegistryPropertySet]))
(entryID,propertyName,propertyValue,propertySize);
}
OSStatus
RegistryEntryGetMod (const RegEntryID * entry,
RegEntryModifiers * modifiers)
{
if (__nr_symbols[kRegistryEntryGetMod] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,RegEntryModifiers *))
(__nr_symbols[kRegistryEntryGetMod]))
(entry,modifiers);
}
OSStatus
RegistryEntrySetMod (const RegEntryID * entry,
RegEntryModifiers modifiers)
{
if (__nr_symbols[kRegistryEntrySetMod] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,RegEntryModifiers))
(__nr_symbols[kRegistryEntrySetMod]))
(entry,modifiers);
}
OSStatus
RegistryPropertyGetMod (const RegEntryID * entry,
const RegPropertyName * name,
RegPropertyModifiers * modifiers)
{
if (__nr_symbols[kRegistryPropertyGetMod] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,const RegPropertyName*,RegPropertyModifiers*))
(__nr_symbols[kRegistryPropertyGetMod]))
(entry,name,modifiers);
}
OSStatus
RegistryPropertySetMod (const RegEntryID * entry,
const RegPropertyName * name,
RegPropertyModifiers modifiers)
{
if (__nr_symbols[kRegistryPropertySetMod] == NULL)
return -1;
return ((OSStatus (*)(const RegEntryID*,const RegPropertyName*,RegPropertyModifiers))
(__nr_symbols[kRegistryPropertySetMod]))
(entry,name,modifiers);
}
OSStatus
RegistryEntryMod (RegEntryIter * cookie,
RegEntryIterationOp relationship,
RegEntryID * foundEntry,
Boolean * done,
RegEntryModifiers matchingModifiers)
{
if (__nr_symbols[kRegistryEntryMod] == NULL)
return -1;
return ((OSStatus (*)(RegEntryIter*,RegEntryIterationOp,RegEntryID*,
Boolean*,RegEntryModifiers))
(__nr_symbols[kRegistryEntryMod]))
(cookie, relationship, foundEntry, done, matchingModifiers);
}
OSStatus
RegistryEntryPropertyMod (RegEntryIter * cookie,
RegEntryIterationOp relationship,
RegEntryID * foundEntry,
Boolean * done,
RegPropertyModifiers matchingModifiers)
{
if (__nr_symbols[kRegistryEntryPropertyMod] == NULL)
return -1;
return ((OSStatus (*)(RegEntryIter*,RegEntryIterationOp,RegEntryID*,
Boolean*,RegEntryModifiers))
(__nr_symbols[kRegistryEntryPropertyMod]))
(cookie, relationship, foundEntry, done, matchingModifiers);
}